package sistema.usuario;

/**
 * Implementa��o b�sica de um usu�rio
 * @author Vin�cius Ferraz Campos, vinicius.ferraz_at_gmail.com
 *
 */
public class UsuarioImpl implements UsuarioIF {

	private String nome;
	private String login;
	private String senha;
	// FIXME  lista de tipos?!?! � a melhor solu��o!?
	private String tipo;
	private String complemento;

	
	
	/**
	 * Construtor
	 * @param nome Login do usuario para acesso ao sistema
	 * @param login Nome do usu�rio
	 * @param senha Senha, j� criptografada, para ter acesso ao sistema
	 * @param complemento 
	 */
	public UsuarioImpl (String nome, String login, String senha, String tipo, String complemento) {
		this.nome = nome;
		this.login = login;
		this.senha = senha;
		this.tipo = tipo;
		this.complemento = complemento;
	}
	
	
	/* (non-Javadoc)
	 * @see sistema.usuario.UsuarioIF#getNome()
	 */
	public String getNome() {
		return this.nome;
	}

	/* (non-Javadoc)
	 * @see sistema.usuario.UsuarioIF#getLogin()
	 */
	public String getLogin() {
		return this.login;
	}

	/* (non-Javadoc)
	 * @see sistema.usuario.UsuarioIF#setSenha(java.lang.String)
	 */
	public void setSenha(String senha) {
		this.senha = senha;
	}

	//nao eh normal mas achei interessante 1 metodo assim
	public boolean ehSuaSenha(String senha) {
		return this.senha.equals(senha);
	}


	/* (non-Javadoc)
	 * @see sistema.usuario.UsuarioIF#getTipo()
	 */
	public String getTipo() {
		return this.tipo;
	}

	/* (non-Javadoc)
	 * @see sistema.usuario.UsuarioIF#getComplemento()
	 */
	public String getComplemento() {
		return this.complemento;
	}
	
	/* (non-Javadoc)
	 * @see java.lang.Object#toString()
	 */
	public String toString() {
		return nome +" - " + login +" - "+tipo +" - "+complemento;
	}

}
